// 课程连接
// https://www.bilibili.com/video/BV1nV411S7Et
// https://juejin.cn/post/7235906458898317372#heading-6
const MyPromise = require("./MyPromise");
let promise = new MyPromise((resolve, reject) => {
  // resolve("success");
  // reject("error");
  // throw new Error("error");
  // setTimeout(() => {
  //   resolve("success");
  // }, 2000);
  resolve("First reslove");
});

const p2 = promise.then((res) => {
  // return res + " -> then promise2";
  // return Promise.resolve("promise resolve");
  return new MyPromise((resolve, reject) => {
    resolve("new MyPromise resolve");
  });
}, (reason) => {
  return reason;
})
.then((value) => {
  console.log(value);
}, reason => {
  console.log(reason);
});


// // promise.then((res) => {
// //   console.log("res:" + res);
// //   return res;
// // }, (reason) => {
// //   console.log("reason:" + reason);
// // })
// promise.then((res) => {
//   console.log("res:" + res);
//   return res;
// })
// .then((res2) => {
//   console.log(res2);
//   return new Promise((resolve, reject) => {
//     setTimeout(() => {
//       resolve(res2);
//     }, 1000);
//   });
// })
// .then((res3) => {
//   console.log(res3);
// });